

/*
   

    改变状态：
        函数式组件：useState
        类式组件：setState
            setState是异步的
            setState，改对象、数组，要用新的地址值 [...oldData], {...oldData}
    
    state：在类式组件中，它充当“状态机”，所有状态（就是变量）都定义在这里
    在自定义方法中，this是undefined，基本都是事件绑定方法用的
        1. 这种情况，可以用bind强制绑定this
        2. 这种情况，使用箭头函数 fnName = ()=>{}
*/

// 函数式组件
// import React, { useEffect, useState } from 'react'
// export default function A003_state() {
//     let [test, setTest] = useState('')
//     useEffect(() => {
//         function xx() {
//             setTimeout(() => {
//                 setTest('复习react，第一天')
//             }, 2000)
//         }
//         xx()
//     }, [test])
//     return (
//         <div>{test}</div>
//     )
// }


// 类式组件
import React, { Component } from 'react'
export default class index extends Component {
    state = {
        test: ''
    }
    componentDidMount() {
        setTimeout(() => {
            this.setState({
                test: '复习react，第一天'
            })
        }, 2000)
    }
    render() {
        return (
            <>
                等2秒，有结果
                <div>{this.state.test}</div>
            </>
        )
    }
}


